package br.com.speedprevweb.model;
// Generated 18/02/2014 22:47:57 by Hibernate Tools 3.6.0


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Servidor generated by hbm2java
 */
@Entity
@Table(name="Servidor"
    ,schema="dbo"
    ,catalog="db_compensacao"
)
public class Servidor  implements java.io.Serializable {


     private int idServidor;
     private ClassificacaoServidor classificacaoServidor;
     private UnidadeFederativa unidadeFederativa;
     private OrgaoLotacao orgaoLotacao;
     private StatusMatricula statusMatricula;
     private String cdServidor;
     private String nuPis;
     private String nuCpf;
     private String nmServidor;
     private char inSexo;
     private Date dtNascimento;
     private String nmMae;
     private String dsLogradouro;
     private String dsBairro;
     private String nmMunicipio;
     private String nuCep;
     private String nuMatricula;
     private String nuTituloJulgado;
     private Date dtTituloJulgado;
     private String nuCtps;
     private String nuSerieCtps;
     private Date dtIngresso;
     private Date dtAposentadoria;
     private boolean inCompensavel;
     private boolean inDigitalizado;
     private Set servidorMatriculas = new HashSet(0);
     private Set servidorOcorrencias = new HashSet(0);
     private Set servidorDocumentos = new HashSet(0);

    public Servidor() {
    }

	
    public Servidor(int idServidor, ClassificacaoServidor classificacaoServidor, UnidadeFederativa unidadeFederativa, StatusMatricula statusMatricula, String cdServidor, String nuPis, String nuCpf, String nmServidor, char inSexo, Date dtNascimento, boolean inCompensavel, boolean inDigitalizado) {
        this.idServidor = idServidor;
        this.classificacaoServidor = classificacaoServidor;
        this.unidadeFederativa = unidadeFederativa;
        this.statusMatricula = statusMatricula;
        this.cdServidor = cdServidor;
        this.nuPis = nuPis;
        this.nuCpf = nuCpf;
        this.nmServidor = nmServidor;
        this.inSexo = inSexo;
        this.dtNascimento = dtNascimento;
        this.inCompensavel = inCompensavel;
        this.inDigitalizado = inDigitalizado;
    }
    public Servidor(int idServidor, ClassificacaoServidor classificacaoServidor, UnidadeFederativa unidadeFederativa, OrgaoLotacao orgaoLotacao, StatusMatricula statusMatricula, String cdServidor, String nuPis, String nuCpf, String nmServidor, char inSexo, Date dtNascimento, String nmMae, String dsLogradouro, String dsBairro, String nmMunicipio, String nuCep, String nuMatricula, String nuTituloJulgado, Date dtTituloJulgado, String nuCtps, String nuSerieCtps, Date dtIngresso, Date dtAposentadoria, boolean inCompensavel, boolean inDigitalizado, Set servidorMatriculas, Set servidorOcorrencias, Set servidorDocumentos) {
       this.idServidor = idServidor;
       this.classificacaoServidor = classificacaoServidor;
       this.unidadeFederativa = unidadeFederativa;
       this.orgaoLotacao = orgaoLotacao;
       this.statusMatricula = statusMatricula;
       this.cdServidor = cdServidor;
       this.nuPis = nuPis;
       this.nuCpf = nuCpf;
       this.nmServidor = nmServidor;
       this.inSexo = inSexo;
       this.dtNascimento = dtNascimento;
       this.nmMae = nmMae;
       this.dsLogradouro = dsLogradouro;
       this.dsBairro = dsBairro;
       this.nmMunicipio = nmMunicipio;
       this.nuCep = nuCep;
       this.nuMatricula = nuMatricula;
       this.nuTituloJulgado = nuTituloJulgado;
       this.dtTituloJulgado = dtTituloJulgado;
       this.nuCtps = nuCtps;
       this.nuSerieCtps = nuSerieCtps;
       this.dtIngresso = dtIngresso;
       this.dtAposentadoria = dtAposentadoria;
       this.inCompensavel = inCompensavel;
       this.inDigitalizado = inDigitalizado;
       this.servidorMatriculas = servidorMatriculas;
       this.servidorOcorrencias = servidorOcorrencias;
       this.servidorDocumentos = servidorDocumentos;
    }
   
     @Id 

    
    @Column(name="idServidor", unique=true, nullable=false)
    public int getIdServidor() {
        return this.idServidor;
    }
    
    public void setIdServidor(int idServidor) {
        this.idServidor = idServidor;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idClassificacaoServidor", nullable=false)
    public ClassificacaoServidor getClassificacaoServidor() {
        return this.classificacaoServidor;
    }
    
    public void setClassificacaoServidor(ClassificacaoServidor classificacaoServidor) {
        this.classificacaoServidor = classificacaoServidor;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idUf", nullable=false)
    public UnidadeFederativa getUnidadeFederativa() {
        return this.unidadeFederativa;
    }
    
    public void setUnidadeFederativa(UnidadeFederativa unidadeFederativa) {
        this.unidadeFederativa = unidadeFederativa;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idOrgaoLotacao")
    public OrgaoLotacao getOrgaoLotacao() {
        return this.orgaoLotacao;
    }
    
    public void setOrgaoLotacao(OrgaoLotacao orgaoLotacao) {
        this.orgaoLotacao = orgaoLotacao;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="idStatusMatricula", nullable=false)
    public StatusMatricula getStatusMatricula() {
        return this.statusMatricula;
    }
    
    public void setStatusMatricula(StatusMatricula statusMatricula) {
        this.statusMatricula = statusMatricula;
    }

    
    @Column(name="cdServidor", nullable=false, length=20)
    public String getCdServidor() {
        return this.cdServidor;
    }
    
    public void setCdServidor(String cdServidor) {
        this.cdServidor = cdServidor;
    }

    
    @Column(name="nuPis", nullable=false, length=11)
    public String getNuPis() {
        return this.nuPis;
    }
    
    public void setNuPis(String nuPis) {
        this.nuPis = nuPis;
    }

    
    @Column(name="nuCpf", nullable=false, length=11)
    public String getNuCpf() {
        return this.nuCpf;
    }
    
    public void setNuCpf(String nuCpf) {
        this.nuCpf = nuCpf;
    }

    
    @Column(name="nmServidor", nullable=false, length=70)
    public String getNmServidor() {
        return this.nmServidor;
    }
    
    public void setNmServidor(String nmServidor) {
        this.nmServidor = nmServidor;
    }

    
    @Column(name="inSexo", nullable=false, length=1)
    public char getInSexo() {
        return this.inSexo;
    }
    
    public void setInSexo(char inSexo) {
        this.inSexo = inSexo;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtNascimento", nullable=false, length=23)
    public Date getDtNascimento() {
        return this.dtNascimento;
    }
    
    public void setDtNascimento(Date dtNascimento) {
        this.dtNascimento = dtNascimento;
    }

    
    @Column(name="nmMae", length=70)
    public String getNmMae() {
        return this.nmMae;
    }
    
    public void setNmMae(String nmMae) {
        this.nmMae = nmMae;
    }

    
    @Column(name="dsLogradouro", length=55)
    public String getDsLogradouro() {
        return this.dsLogradouro;
    }
    
    public void setDsLogradouro(String dsLogradouro) {
        this.dsLogradouro = dsLogradouro;
    }

    
    @Column(name="dsBairro", length=20)
    public String getDsBairro() {
        return this.dsBairro;
    }
    
    public void setDsBairro(String dsBairro) {
        this.dsBairro = dsBairro;
    }

    
    @Column(name="nmMunicipio", length=24)
    public String getNmMunicipio() {
        return this.nmMunicipio;
    }
    
    public void setNmMunicipio(String nmMunicipio) {
        this.nmMunicipio = nmMunicipio;
    }

    
    @Column(name="nuCep", length=8)
    public String getNuCep() {
        return this.nuCep;
    }
    
    public void setNuCep(String nuCep) {
        this.nuCep = nuCep;
    }

    
    @Column(name="nuMatricula", length=20)
    public String getNuMatricula() {
        return this.nuMatricula;
    }
    
    public void setNuMatricula(String nuMatricula) {
        this.nuMatricula = nuMatricula;
    }

    
    @Column(name="nuTitulo_julgado", length=50)
    public String getNuTituloJulgado() {
        return this.nuTituloJulgado;
    }
    
    public void setNuTituloJulgado(String nuTituloJulgado) {
        this.nuTituloJulgado = nuTituloJulgado;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtTitulo_julgado", length=23)
    public Date getDtTituloJulgado() {
        return this.dtTituloJulgado;
    }
    
    public void setDtTituloJulgado(Date dtTituloJulgado) {
        this.dtTituloJulgado = dtTituloJulgado;
    }

    
    @Column(name="nuCtps", length=10)
    public String getNuCtps() {
        return this.nuCtps;
    }
    
    public void setNuCtps(String nuCtps) {
        this.nuCtps = nuCtps;
    }

    
    @Column(name="nuSerie_ctps", length=10)
    public String getNuSerieCtps() {
        return this.nuSerieCtps;
    }
    
    public void setNuSerieCtps(String nuSerieCtps) {
        this.nuSerieCtps = nuSerieCtps;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtIngresso", length=23)
    public Date getDtIngresso() {
        return this.dtIngresso;
    }
    
    public void setDtIngresso(Date dtIngresso) {
        this.dtIngresso = dtIngresso;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="dtAposentadoria", length=23)
    public Date getDtAposentadoria() {
        return this.dtAposentadoria;
    }
    
    public void setDtAposentadoria(Date dtAposentadoria) {
        this.dtAposentadoria = dtAposentadoria;
    }

    
    @Column(name="inCompensavel", nullable=false)
    public boolean isInCompensavel() {
        return this.inCompensavel;
    }
    
    public void setInCompensavel(boolean inCompensavel) {
        this.inCompensavel = inCompensavel;
    }

    
    @Column(name="inDigitalizado", nullable=false)
    public boolean isInDigitalizado() {
        return this.inDigitalizado;
    }
    
    public void setInDigitalizado(boolean inDigitalizado) {
        this.inDigitalizado = inDigitalizado;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="servidor")
    public Set getServidorMatriculas() {
        return this.servidorMatriculas;
    }
    
    public void setServidorMatriculas(Set servidorMatriculas) {
        this.servidorMatriculas = servidorMatriculas;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="servidor")
    public Set getServidorOcorrencias() {
        return this.servidorOcorrencias;
    }
    
    public void setServidorOcorrencias(Set servidorOcorrencias) {
        this.servidorOcorrencias = servidorOcorrencias;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="servidor")
    public Set getServidorDocumentos() {
        return this.servidorDocumentos;
    }
    
    public void setServidorDocumentos(Set servidorDocumentos) {
        this.servidorDocumentos = servidorDocumentos;
    }




}


